package entity

import "time"

// Script 服务
type Script struct {
	Id          int64     `gorm:"primaryKey;autoIncrement;comment:主键" json:"id"`                      // 主键
	ItemType    int       `gorm:"not null;comment:类型" json:"itemType"`                                // 类型 1:分组; 2:服务; 3:脚本
	ParentId    int64     `gorm:"default:0;comment:上级ID" json:"parentId"`                             // 上级ID
	CurrPath    string    `gorm:"not null;comment:路径" json:"currPath"`                                // 路径
	Title       string    `gorm:"not null;comment:标题" json:"title"`                                   // 标题
	Desc        string    `gorm:"comment:描述" json:"desc"`                                             // 描述
	WorkHome    string    `gorm:"comment:工作目录" json:"workHome"`                                       // 分组的时候添加                                    // 工作目录(分组时添加)
	WorkPath    string    `gorm:"comment:工作路径" json:"workPath"`                                       // 工作路径(服务时添加)
	FileName    string    `gorm:"comment:文件名称" json:"filePath"`                                       // 文件名称(脚本时添加)
	Content     string    `gorm:"comment:内容" json:"content"`                                          // 内容
	ScriptType  int       `gorm:"comment:脚本类型" json:"scriptType"`                                     // 脚本类型 0:脚本 1:命令
	ScriptParam string    `gorm:"comment:脚本参数" json:"scriptParam"`                                    // 脚本参数
	LogFile     string    `gorm:"comment:日志文件名" json:"logFile"`                                       // 日志文件
	CreateId    int64     `gorm:"column:create_id;comment:创建人ID" json:"createId"`                     // 创建人ID
	CreateTime  time.Time `gorm:"column:create_time;comment:创建时间" json:"createTime"`                  // 创建时间
	UpdateId    int64     `gorm:"column:update_id;comment:更新人ID" json:"updateId"`                     // 更新人ID
	UpdateTime  time.Time `gorm:"column:update_time;comment:更新时间" json:"updateTime"`                  // 更新时间
	CanView     int       `gorm:"column:can_view;default:1;type:integer;comment:删除状态" json:"canView"` // 逻辑删除
}
